.tabs {
  display: flex;
  justify-content: space-around;
  margin: 60px auto;
  padding: 0 100px;
  border-bottom: 1px solid #ddd;
  a {
    padding: 20px 0;
    border-bottom: 1px solid #ddd;
    margin-bottom: -1px;
    font-size: 24px;
    &.active {
      color: #0065b3;
      border-color: #0065b3;
    }
  }
}

.box-content {
  display: grid;
  column-gap: 40px;
  row-gap: 80px;
  grid-template-columns: repeat(3, 1fr);
}

.item {
  cursor: pointer;
  .title {
    font-size: 18px;
    text-align: center;
    line-height: 45px;
    border: 1px solid #efefef;
    border-top: none;
    position: relative;
    transition: all .3s;
    z-index: 1;
    &::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      right: 100%;
      bottom: 0;
      background-color: #0065b3;
      z-index: -1;
    }
  }
  &:hover {
    .title {
      color: white;
      border-color: #0065b3;

      &::before {
        right: 0;
      }
    }
    img {
      transition: all .3s;
      transform: scale(1.2);
    }
  }
  .img {
    overflow: hidden;
  }
}

@media screen and (max-width: 1400px) {
  .tabs {
    padding: 0 20px;
    margin: 0;
    margin-bottom: 20px;
    gap: 10px;
    a {
      font-size: 14px;
      padding: 10px;
    }
  }
  .box {
    &-content {
      column-gap: 20px;
      row-gap: 20px;
      grid-template-columns: repeat(2, 1fr);
      padding: 20px;
    }
    img {
      width: 100%;
    }
  }
}